{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "5205e210503bfb61",
   "metadata": {},
   "source": [
    "### GP求解旅行商问题\n",
    "\n",
    "GP当然也可以用于求解组合优化问题。在这里，我们将使用GP来解决旅行商问题（TSP）。TSP是指一个旅行商要拜访n个城市，他必须从自己所在的城市出发，到这n个城市中的每一个城市去一次，最后回到自己所在的城市，而且每个城市只能去一次，求解从出发到回到自己所在城市的最短路径。\n",
    "\n",
    "旅行商问题是一个NP难问题，通常可以使用遗传算法求解。但是遗传算法的缺点是需要大量的迭代次数才能收敛到最优解。因此我们将使用启发式函数来求解这个问题。启发式函数是一个根据特征输入返回排序分数的函数。排序分数将用于选择下一个城市。\n",
    "\n",
    "在本教程中，我们将使用距离作为启发式函数的输入，也就是说，我们的启发式函数是距离的非线性变换函数。我们将尝试使用GP来演化这个函数。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a74153623d4c5a7e",
   "metadata": {},
   "source": [
    "### 评估函数\n",
    "对于组合优化问题，评估函数相对复杂，需要根据领域知识进行设计。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "initial_id",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2023-11-12T06:28:22.884624500Z",
     "start_time": "2023-11-12T06:28:22.815968500Z"
    }
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "from deap import algorithms, base, creator, tools, gp\n",
    "\n",
    "def select_next_city(current_city, unvisited_cities, heuristic, distance_matrix):\n",
    "    scores = []\n",
    "    for next_city in unvisited_cities:\n",
    "        # 计算从当前城市到下一个可能城市的距离\n",
    "        distance = distance_matrix[current_city][next_city]\n",
    "        # 使用距离作为启发式函数的输入，计算得分\n",
    "        heuristic_score = heuristic(distance)\n",
    "        # 计算得分用于选择下一个城市\n",
    "        # 这里可以直接使用heuristic_score，也可以与距离结合\n",
    "        # 例如，使用距离的倒数与启发式得分的和\n",
    "        score = 1 / distance + heuristic_score\n",
    "        scores.append((next_city, score))\n",
    "\n",
    "    # 选择得分最高的城市作为下一站\n",
    "    selected_city = max(scores, key=lambda c: c[1])[0]\n",
    "    return selected_city\n",
    "\n",
    "def decode(individual, distance_matrix):\n",
    "    # 初始化城市列表和路线\n",
    "    unvisited_cities = list(range(len(distance_matrix)))  # 未访问的城市列表\n",
    "    route = [unvisited_cities.pop(0)]  # 从第一个城市开始\n",
    "\n",
    "    # 编译 GP 树为函数\n",
    "    heuristic = gp.compile(expr=individual, pset=pset)\n",
    "\n",
    "    # 循环直到所有城市都被访问\n",
    "    while unvisited_cities:\n",
    "        # 根据启发式函数和距离选择下一个城市\n",
    "        current_city = route[-1]  # 获取路线中的最后一个城市作为当前城市\n",
    "        next_city = select_next_city(current_city, unvisited_cities, heuristic, distance_matrix)\n",
    "        # 将下一个城市添加到路线中，并将其从未访问城市列表中移除\n",
    "        route.append(next_city)\n",
    "        unvisited_cities.remove(next_city)\n",
    "\n",
    "    # 路径闭环，返回起始城市\n",
    "    route.append(route[0])\n",
    "    return route\n",
    "\n",
    "# 每个城市的坐标在一个单位正方形内随机生成\n",
    "coordinates = np.random.rand(10, 2)  # 生成10个城市的x,y坐标\n",
    "\n",
    "# 计算距离矩阵\n",
    "def calculate_distance_matrix(coords):\n",
    "    num_cities = len(coords)\n",
    "    distance_matrix = np.zeros((num_cities, num_cities))\n",
    "    for i in range(num_cities):\n",
    "        for j in range(num_cities):\n",
    "            if i != j:\n",
    "                # 计算欧几里得距离\n",
    "                distance_matrix[i][j] = np.sqrt(np.sum((coords[i] - coords[j])**2))\n",
    "            else:\n",
    "                # 城市不与自己连接\n",
    "                distance_matrix[i][j] = np.inf\n",
    "    return distance_matrix\n",
    "\n",
    "distance_matrix = calculate_distance_matrix(coordinates)\n",
    "\n",
    "# 评价函数，计算路径的总距离\n",
    "def evalTSP(individual):\n",
    "    path = decode(individual, distance_matrix)\n",
    "    distance = sum(distance_matrix[path[i]][path[i-1]] for i in range(1,len(path)))\n",
    "    return distance,\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ff38033627ba98b4",
   "metadata": {},
   "source": [
    "### 遗传编程算子\n",
    "一旦问题定义好了，遗传编程算子的定义就变得相对简单。我们可以使用DEAP中内置的算子。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "5b804caa1f073b17",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2023-11-12T06:28:22.892859300Z",
     "start_time": "2023-11-12T06:28:22.889153400Z"
    }
   },
   "outputs": [],
   "source": [
    "# 初始化GP\n",
    "creator.create(\"FitnessMin\", base.Fitness, weights=(-1.0,))  # 最小化问题\n",
    "creator.create(\"Individual\", gp.PrimitiveTree, fitness=creator.FitnessMin)\n",
    "\n",
    "# 基本函数\n",
    "pset = gp.PrimitiveSet(\"MAIN\", arity=1)\n",
    "pset.addPrimitive(np.add, 2)\n",
    "pset.addPrimitive(np.subtract, 2)\n",
    "pset.addPrimitive(np.multiply, 2)\n",
    "pset.addPrimitive(np.negative, 1)\n",
    "\n",
    "toolbox = base.Toolbox()\n",
    "toolbox.register(\"expr\", gp.genGrow, pset=pset, min_=1, max_=3)\n",
    "toolbox.register(\"individual\", tools.initIterate, creator.Individual, toolbox.expr)\n",
    "toolbox.register(\"population\", tools.initRepeat, list, toolbox.individual)\n",
    "toolbox.register(\"compile\", gp.compile, pset=pset)\n",
    "toolbox.register(\"evaluate\", evalTSP)\n",
    "toolbox.register(\"select\", tools.selTournament, tournsize=3)\n",
    "toolbox.register(\"mate\", gp.cxOnePoint)\n",
    "toolbox.register(\"mutate\", gp.mutUniform, expr=toolbox.expr, pset=pset)\n",
    "toolbox.register(\"expr_mut\", gp.genGrow, min_=0, max_=2)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a60b7c6d4d31cd23",
   "metadata": {},
   "source": [
    "接下来，我们将使用DEAP内置的演化流程来运行已定义的函数。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "24db570e7597ba08",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2023-11-12T06:28:23.107994600Z",
     "start_time": "2023-11-12T06:28:22.894867100Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "   \t      \t                    fitness                     \t                     size                     \n",
      "   \t      \t------------------------------------------------\t----------------------------------------------\n",
      "gen\tnevals\tavg    \tgen\tmax   \tmin    \tnevals\tstd     \tavg \tgen\tmax\tmin\tnevals\tstd   \n",
      "0  \t100   \t3.19162\t0  \t3.5749\t3.15372\t100   \t0.120534\t5.86\t0  \t14 \t2  \t100   \t3.5497\n",
      "1  \t89    \t3.17056\t1  \t3.5749\t3.15372\t89    \t0.0825342\t6.54\t1  \t15 \t2  \t89    \t3.34192\n",
      "2  \t94    \t3.15793\t2  \t3.5749\t3.15372\t94    \t0.0419069\t6.81\t2  \t17 \t2  \t94    \t3.52901\n",
      "3  \t93    \t3.18741\t3  \t3.5749\t3.15372\t93    \t0.114263 \t7.25\t3  \t17 \t2  \t93    \t4.1143 \n",
      "4  \t94    \t3.17477\t4  \t3.5749\t3.15372\t94    \t0.0917942\t7.33\t4  \t17 \t2  \t94    \t4.13051\n",
      "5  \t89    \t3.17056\t5  \t3.5749\t3.15372\t89    \t0.0825342\t8.08\t5  \t22 \t2  \t89    \t4.58406\n",
      "6  \t86    \t3.17477\t6  \t3.5749\t3.15372\t86    \t0.0917942\t8.34\t6  \t22 \t2  \t86    \t4.62649\n",
      "7  \t86    \t3.17056\t7  \t3.5749\t3.15372\t86    \t0.0825342\t7.77\t7  \t23 \t2  \t86    \t4.48521\n",
      "8  \t92    \t3.18741\t8  \t3.5749\t3.15372\t92    \t0.114263 \t8.15\t8  \t19 \t2  \t92    \t4.36892\n",
      "9  \t92    \t3.16214\t9  \t3.5749\t3.15372\t92    \t0.0589653\t8.38\t9  \t23 \t2  \t92    \t5.00755\n",
      "10 \t94    \t3.15793\t10 \t3.5749\t3.15372\t94    \t0.0419069\t8.36\t10 \t25 \t2  \t94    \t5.05474\n",
      "Best individual: subtract(ARG0, ARG0) (3.1537154779102305,)\n"
     ]
    }
   ],
   "source": [
    "# 统计函数\n",
    "stats_fit = tools.Statistics(lambda ind: ind.fitness.values)\n",
    "stats_size = tools.Statistics(len)\n",
    "mstats = tools.MultiStatistics(fitness=stats_fit, size=stats_size)\n",
    "mstats.register(\"avg\", np.mean)\n",
    "mstats.register(\"std\", np.std)\n",
    "mstats.register(\"min\", np.min)\n",
    "mstats.register(\"max\", np.max)\n",
    "\n",
    "population = toolbox.population(n=100)\n",
    "hof = tools.HallOfFame(1)\n",
    "\n",
    "# 运行遗传编程算法\n",
    "algorithms.eaSimple(population, toolbox, 0.9, 0.1, 10, mstats, halloffame=hof)\n",
    "\n",
    "# 输出最好的个体\n",
    "best_ind = hof[0]\n",
    "print('Best individual:', best_ind, best_ind.fitness)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "f614c8f953aaf380",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2023-11-12T06:28:23.401796500Z",
     "start_time": "2023-11-12T06:28:23.107994600Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+0AAALACAYAAADmApNPAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAADYV0lEQVR4nOzdd3xUZdr/8c9kMpNeIQ2SECBACITekaaChaIUC67Ysa/7uCtueXZX3UfX3dX96a6Kve/a6agooiDSLXQSCBBISCOk98nM/P6YJBCpgSRnknzfrxcv4cw5Z67xZsJcc933dZucTqcTEREREREREXE7HkYHICIiIiIiIiKnpqRdRERERERExE0paRcRERERERFxU0raRURERERERNyUknYRERERERERN6WkXURERERERMRNKWkXERERERERcVNK2kVERERERETclJJ2ERERaVWcTqfRIYiIiLQYT6MDEBERkVP73e9+x6JFi854TufOnfn6668BKCgo4KWXXmLVqlVkZ2fj6+tL7969ueGGG7jsssvqr1m4cCG///3vG9zHw8MDf39/kpKSuO+++xg8ePBpn/Piiy/myJEjp7w+ISGBu+++m9GjRzf25Z5VcXExTzzxBLNmzWLo0KFNfn8RERF3pKRdRETETd17771cf/319X+eP38+u3fv5vnnn68/ZrVaAaisrOQXv/gFNTU1zJ07l7i4OEpKSvj888954IEH+P3vf88tt9zS4P7PP/88YWFhADgcDvLy8njhhRe4+eab+eSTT0hISDhtbOPGjePee++t/3NNTQ2HDx/mlVde4a677mLBggX06tWrKf431NuzZw+LFy9mxowZTXpfERERd6akXURExE3FxsYSGxtb/+fQ0FCsVisDBgw46dwVK1awf/9+VqxYQdeuXeuPX3rppVRWVvLcc88xZ84czGZz/WO9e/cmOjq6wX0SExOZOHEi7733Hn/5y19OG1toaOhJcQwZMoQBAwZwxRVXsGTJEh5++OFGvmIRERH5Oa1pFxERaQPy8vKAU6/3vuuuu7j33nuprq4+632io6MJCQkhMzPzvOIICAg46VhVVRUvvPACl19+OUlJSUyaNIlXXnkFh8NRf86cOXOYM2dOg+s2bdpEr1692LRpE5s2beKmm24C4Kabbmpw7ldffcWMGTNISkpi9OjRPP7445SXl59X/CIiIu5GSbuIiEgbMGbMGDw9Pbn55pt5/vnn2bp1KzabDYB+/fpx++234+Pjc9b7FBQUUFBQ0KDCfypOp5Oampr6X5WVlaSkpPC73/0OT09PpkyZUn/e3XffzWuvvcasWbN46aWXuPzyy3n22Wd55JFHzvn19enThz//+c8A/PnPf66/dtmyZdx3331069aNF154gfvvv5+lS5dy7733qmGdiIi0CZoeLyIi0gb06tWLZ555hscee4znnnuO5557Dm9vb4YMGcLMmTO58sorT7rG4XBQU1MDuKrhhw4d4qmnnsLDw4PrrrvujM+3ePFiFi9e3OCYp6cnffv25Y033iAxMRGAb7/9lvXr1/PUU08xbdo0AEaPHo23tzf/+te/uPnmm4mPjz/r6/P3968/Lz4+nvj4eJxOJ08//TRjxozh6aefrj83Li6OW265hTVr1jB+/Piz3ltERMSdKWkXERFpIyZNmsSECRPYuHEj69evZ9OmTaxfv57vvvuOFStW8K9//QuTyVR//sSJE0+6R+fOnXnqqafO2kRuwoQJ3HfffTidTtLS0vh//+//ERERwXPPPUd4eHj9eZs3b8ZsNp/0pcG0adP417/+xaZNm84paT+VAwcOkJ2dzV133VX/5QPA0KFD8ff3Z926dUraRUSk1VPSLiIi0oZYLBbGjBnDmDFjAMjNzeXxxx/niy++YPXq1UyYMKH+3BdffLG+e7zFYiEkJISIiIhzep7g4GCSkpIA1/T7Pn36MHPmTObOnctHH32El5cXAEVFRYSEhODp2fAjR93zlpSUnPdrLSwsBOCxxx7jscceO+nx3Nzc8763iIiIu1DSLiIi0gZcf/31dO3alSeffLLB8fDw8PqkPTU1tUHS3rNnz5O6x5+v7t2786tf/Yq//e1vvPDCC/z6178GICgoiIKCAmpqahok7nUJdUhISP0xu93e4J5nayYXGBgIwMMPP8ywYcNOejwoKOj8XoyIiIgbUSM6ERGRNqBz586sWLGC9PT0kx47ePAg4ErSm9OcOXPo2bMnb7zxRv1zDhs2DLvdzmeffdbg3KVLlwIwePBgwLVmPTs7u8E5P/74Y4M/n7hdHUC3bt3o0KEDGRkZJCUl1f+KjIzkn//8J7t3727S1yciImIEVdpFRETagAcffJBNmzYxa9YsbrrpJgYOHIiHhwc7duzgjTfeYOzYsYwdO7ZZY/D09OQPf/gDt9xyC48//jivv/46Y8eOZfjw4TzyyCPk5uaSmJjI5s2befXVV5k+fXr9evYJEybw9ddf88QTT3DppZfyww8/nNTorm47udWrVxMUFERCQgIPPvggf/7znzGbzUyYMIHi4mLmz59PTk4Offr0adbXKyIi0hKUtIuIiLQB0dHRLFq0iJdffplly5bx6quv4nQ66dKlC7fffjs33XRTgyZ0zWXkyJFcdtllfPHFF3z11VdceumlvPzyy/z73//mnXfeIT8/n+joaB588EFuvfXW+utmzpzJ4cOHWbRoER9++CHDhg3jX//6F7Nnz64/p0ePHkyZMoX//ve/rF27luXLl3PNNdfg5+fHa6+9xocffoivry+DBg3i6aefJiYmptlfr4iISHMzObWJqYiIiIiIiIhb0pp2ERERERERETelpF1ERERERETETSlpFxEREREREXFThiftDoeDf//734wZM4b+/ftz2223cejQodOef/ToUX79618zfPhwhg8fzq9+9auTtogRERERERERaQsMT9rnz5/PBx98wOOPP86HH36IyWRi7ty5VFdXn/L8Bx98kKysLN58803efPNNsrOzuffee1s4ahEREREREZHmZ2jSXl1dzRtvvMEvf/lLxo0bR0JCAs888ww5OTmsXLnypPOLi4vZsmULc+fOJTExkcTERO6880527dpFQUGBAa9AREREREREpPkYuk97cnIyZWVljBgxov5YYGAgiYmJbNmyhcmTJzc438vLC19fXxYvXsywYcMAWLJkCXFxcQQFBZ1XDD/99BNOpxOLxXL+L0RERERERETkHNlsNkwmEwMHDjzruYYm7XVr0aOiohocDw8PJysr66Tzvby8eOKJJ/jLX/7CkCFDMJlMhIWF8Z///AcPj/ObNOB0Out/XQin00lNTQ2enp6YTKYLupc0D42R+9MYuTeNj/vTGLk/jZH70xi5P42R+9MYnV1j8k9Dk/aKigoArFZrg+NeXl4UFRWddL7T6SQlJYWBAwdyxx13YLfbeeaZZ7jvvvt4//338ff3b3QMFouF6upqbDbb+b2In6mpqWmS+0jz0Ri5P42Re9P4uD+NkfvTGLk/jZH70xi5P43RmZ3rbG9Dk3Zvb2/Atba97vcAVVVV+Pj4nHT+p59+ynvvvcc333xTn6C/9NJL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qIYOHarf/OY3qqysDGLFoaela9TweXfccYeee+65IFQZ2lq6Rjt37tRdd92l4cOH6/zzz9e0adN04MCBIFYcWlq6Plu2bNGtt96qQYMGacSIEXriiSdUWloaxIpDz8l+nZOk9957T3369NG+ffvauMrQ1tI1evfdd9WnT59Gv5q7rmi5lq6Rx+PR008/rVGjRmngwIGaPHmysrKyglhx6GnJGj333HPHfA316dNHjz32WJArDx0tfR0VFBTo4Ycf1vDhwzV8+HA98MADOnjwYBArbt8I7c00f/58LV68WLNmzdKSJUtks9k0depUVVdXH/P4adOmKScnR6+++qrmzZunL774Qk8++WSQqw4tLV0jSXK73Zo+fbo+//zzIFYaulqyRkVFRZoyZYo6deqkRYsW6eWXX1ZRUZHuvPNOVVVVmVB9x9eS9cnPz9eUKVPUs2dPvfvuu5o/f76+++47PfrooyZUHjpO5uucJO3fv5//g4KkpWu0fft2DRs2TJ9//nnAr7S0tCBXHjpauka//e1v9c477+h3v/udli5dqoSEBE2dOlVlZWVBrjx0tGSNbr/99kavnwcffFBOp1O33nqrCdWHhpa+jh566CHl5ubqf//3f/W///u/OnjwoH75y18Guep2zECTqqqqjEGDBhlvvPFG/WMlJSVG//79jZUrVzY6/rvvvjPS09ONXbt21T+2bt06o0+fPsbBgweDUnOoaekaGYZhfPvtt8YVV1xhXHLJJcaQIUOMefPmBavckNTSNXrrrbeMzMxMw+121z+Wm5trpKenG19++WVQag4lJ/N17qGHHjI8Hk/9Y6+++qoxYMCAYJQbkk7m65xhGIbP5zNuuukm45ZbbjHS09ONnJycYJQbkk5mjaZMmWLMmjUrWCWGvJau0d69e4309HTj448/Djh+7Nix/F/URk72a12dPXv2GAMGDAh4PlpXS9eopKTESE9PNz766KP6x9asWWOkp6cbhYWFQam5vaPT3gzbtm1TRUWFRowYUf9YXFyc+vbtqw0bNjQ6fuPGjUpJSdFZZ51V/9iwYcNks9n07bffBqXmUNPSNZKkdevWady4cVq+fLliY2ODVWrIaukanX/++XrhhRcUGRnZ6H0lJSVtWmsoaun6DBo0SM8884zCw8MlSbt27dK7776rCy64IGg1h5qT+TonSS+++KI8Ho/u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paamasaMGfrss880atQozZ49WyNHjtTcuXPrz52ZmamrrrpKr7zyiqZPn17/+D333KMxY8ZIqtm1ff78+br88sv1+OOPS5IuvPBClZeXa/HixSesvaysTMuWLVPPnj0l1fzgYvLkyfr66691+eWXa9u2bRo5cqRmz56tsLCw+to/+eQTbdiwQePHj9fAgQMlSV27dq3/8/PPPy+n06lXX31VMTExkqTzzz9fl156qf7yl790iNsNAAChgU47AAAW4na79emnn8pms2n9+vXKzs5u8jkbN25URESExo4dW/+YzWbTm2++qQceeEDffPONJGn8+PEBz7v66qtlt9u1fv167d69WwUFBY2O6dmzpwYNGlTfsa+Tnp5e/+effvpJhw8frv+BQZ0rr7yyydqTkpLqA7tUE7wl1W8qN3HiRL388svyeDzauXOn1qxZo+eee04+n08ej+e45/366681fPhwOZ1Oeb1eeb1excTEaMiQIfryyy+brAsAAKug0w4AgIXMmjVLu3fv1nPPPacZM2bokUce0ZtvvqmIiIjjPqe4uFgJCQn1neij1V1qnpKSEvB4eHi4EhMTVVZWpuLiYklS586dGz2/c+fO2rp1a8BjycnJjc6flJQUcMzRH+9YoqKiAt622WySVH+/utvt1u9+9zutWLFCXq9XaWlpGjRokMLDw084l724uFirVq3SqlWrGr3v6DoBALAyQjsAABaxatUqvf3223r44Yc1btw4/dd//Zcef/xxPffcc3r44YeP+7zY2FgVFxfL7/cHBPesrCx5vV7Fx8dLkgoKCpSWllb/fo/Ho6KiIiUmJiohIUGSdOjQoUbnLygoUGJi4nE/ft37jr5XvO4HAafi97//vf7xj3/o2Wef1ciRIxUdHS2p5lL3E4mNjdXIkSM1ZcqURu8LD+fbHwBA+8Hl8QAAWEBOTo5+85vfaNiwYZo6daok6YYbbtAll1yil19+WRs2bDjuc4cMGSKPxxOw67phGPr1r3+tBQsWaNiwYZKk9957L+B577//vnw+nwYPHqwzzjhDKSkpjY7JycnRP//5T2VmZh734/fq1UvdunXTBx98EPD4xx9/3LxP/gS+/fZbDR8+XJdeeml9YN+yZYsKCwvru/GSGl1lMGzYMO3atUvnnHOO+vXrp379+um8887Tq6++qtWrV59yXQAABAuhHQAAk3k8Hj300EOy2+0BG65JNZfLJyUlacaMGSotLT3m88eMGaNBgwbpscce05tvvqkvv/xS//Vf/6UdO3Zo6tSp6t27t6699lo9//zzmjt3rr788kstXLhQTz75pIYPH65Ro0YpLCxMDz/8sL788ks99NBD+vTTT7V8+XJNmTJF8fHxx+xY17HZbHrkkUf08ccf6/HHH9fnn3+u559/Xm+++eYp/930799fn3/+ud5880198803eu211zR16lTZbLb6+94lKS4uTt9//702bNggwzD0y1/+Unv37tXdd9+tNWvWaN26dbr//vv1/vvvKyMj45TrAgAgWLg+DAAAk82ZM0ebN2/WvHnz6jdiq5OUlKT//u//1l133aWZM2cG7Oxex2636+WXX9bTTz+t5557TpWVlcrIyNBf/vIXDRo0SFLNZeann366li5dqoULFyo1NVX//u//rvvuu6/+hwSTJk1Sp06d9Oc//1n33XefYmJiNGrUKD388MNN3p/+s5/9TGFhYZo/f75WrFih9PR0PfXUUye8rL85fvWrX8nj8ejZZ59VdXW10tLSdO+992rXrl1au3atfD6f7Ha77rnnHs2fP19Tp07VqlWrlJGRoddff11z587VjBkzZBiG0tPT9cILLzTaMA8AACuzGSfaxQUAAAAAAJiGy+MBAAAAALAoQjsAAAAAABZFaAcAAAAAwKII7QAAAAAAWBShHQAAAAAAiyK0AwAAAABgUYR2AAAAAAAsitAOAAAAAIBFEdoBAAAAALAoQjsAAAAAABZFaAcAAAAAwKII7QAAAAAAWNT/Bwg0z7GV9KQHAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 1200x800 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import seaborn as sns\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "sns.set_theme(context='notebook', style='whitegrid')\n",
    "\n",
    "# 绘图展示最佳路径\n",
    "def plot_route(route, coords):\n",
    "    plt.figure(figsize=(12, 8))\n",
    "    \n",
    "    # 绘制路线\n",
    "    ax = sns.lineplot(x=coords[route, 0], y=coords[route, 1], marker='o', sort=False)\n",
    "    \n",
    "    # 用不同颜色突出显示回到起点的路径\n",
    "    ax.plot([coords[route[-2]][0], coords[route[0]][0]],\n",
    "            [coords[route[-2]][1], coords[route[0]][1]], 'r-o')\n",
    "    \n",
    "    # 添加城市编号标签\n",
    "    for i, (x, y) in enumerate(coords):\n",
    "        plt.text(x, y, f'{i}')\n",
    "    \n",
    "    plt.title('TSP Route')\n",
    "    plt.xlabel('X coordinate')\n",
    "    plt.ylabel('Y coordinate')\n",
    "    plt.show()\n",
    "\n",
    "best_route = decode(best_ind, distance_matrix)\n",
    "plot_route(best_route, coordinates)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
